﻿using HCQ2_Model.APIBase;
using HCQ2_Model.VR;
using HCQ2_Model.VRDD.InputDto._20220625;
using HCQ2_Model.VRDD.InputDto._20220704;
using HCQ2_Model.VRDD.InputDto._211217;
using HCQ2_Model.VRDD.OutputDto._20220625;
using HCQ2_Model.VRDD.OutputDto._20220704;
using HCQ2_Model.VRDD.OutputDto._211217;
using HCQ2_Model.VRQDMeta.InputDto._20220418;
using HCQ2_Model.VRQDMeta.OutputDto._20220418;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace HCQ2_IBLL
{
    public partial interface IT_VRStayUserLogBLL
    {
        /// <summary>
        ///  获取楼宇入住日志
        /// </summary>
        /// <param name="file_id"></param>
        /// <param name="page"></param>
        /// <param name="rows"></param>
        /// <returns></returns>
        List<OutputBuildLog> GetBuildLogList(int file_id, int page, int rows, out int total);
        /// <summary>
        ///  添加入住日志返回数据
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        OutputSaveHouse GetBuildData(InputSaveHouse param);
        /// <summary>
        ///  获取房屋信息
        /// </summary>
        /// <param name="param"></param>
        /// <param name="user_id"></param>
        /// <returns></returns>
        OutputHouseInfo GetHouseInfo(InputHouseInfo param,int user_id);
        /// <summary>
        ///  获取用户的入住信息
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        OutputUserHouseInfo GetUserHouseInfo(BaseVRAPI param);
        /// <summary>
        ///  获取房屋图片信息
        /// </summary>
        /// <param name="param"></param>
        /// <param name="user_id"></param>
        /// <returns></returns>
        HouseImageDetial GetHouseImages(InputHouseInfo param, int user_id);
        /// <summary>
        ///  获取用户住宅列表
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        BasePage<OutputUserHouse> GetUserHouseList(InputUserHouse param);
        /// <summary>
        /// 获取用户住宅详情
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        OutputGetUserHouseDetail GetUserHouseDetail(InputGetUserHouseDetail param);
        /// <summary>
        /// 获取住宅详情
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        OutputGetHouseDetail GetHouseDetail(InputGetHouseDetail param);
        /// <summary>
        /// 返回入住人列表
        /// </summary>
        /// <param name="fileID"></param>
        /// <returns></returns>
        List<stays> stayList(int fileID);
    }
}